package me.send.produce.client.controller;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import me.send.business.service.service.ApiService;
import me.send.business.service.service.UserService;

@Controller
@RequestMapping(value = "main")
public class MainController {

	// 使用首页 跳转 2015年7月1日15:31:31
	@RequestMapping(value = "index")
	public ModelAndView index(HttpServletRequest request) {
		// 使用module view 对象 2015年7月1日15:32:36
		ModelAndView modelAndView = new ModelAndView("/main/main.jsp");
		String path = request.getContextPath();
		String basePath = request.getScheme() + "://" + request.getServerName()
				+ ":" + request.getServerPort() + path + "/";
		HttpSession session = request.getSession();
		// 使用session对象保存一下 路径
		session.setAttribute("ctx", basePath);
		// modelAndView.addObject("ctx", basePath);
		// 返回module view 对象
		return modelAndView;
	}

	@Autowired
	private ApiService apiService;
	
	@RequestMapping(value = "post/url")
	public ModelAndView post_url(HttpServletRequest request, String module_name) {
		// 使用module view 对象 2015年7月1日15:32:36
		ModelAndView modelAndView = new ModelAndView("/main/main.jsp");
		// 2015年7月1日16:51:36
		if (module_name != null && !module_name.equals("")) {
			modelAndView = new ModelAndView("/main/" + module_name.substring(0,module_name.indexOf(".")) + ".jsp");
		}
		// 返回module view 对象
		return modelAndView;
	}
	
	
	@Autowired
	private UserService userService;
	
	@RequestMapping(value="list/all")
	@ResponseBody
	public List<Map<String, Object>> list_all(){
		return userService.list_all();
	}
	
	//测试接口 2015年7月2日09:16:44
	@RequestMapping(value="text")
	@ResponseBody
	public Map<String, Object> text(String text){
		Map<String, Object> map = new HashMap<String, Object>();
		// 增加下面的参数
		map.put("data", text);
		return map;
	}
}
